home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
SPACE 1
/
SPACE - Library 1 - Volume 1.iso
/
program
/
70
/
docs
/
appendix.3
< prev
next >
Wrap
Text File
|
1987-12-25
|
11KB
|
529 lines
_✓C_✓l_✓a_✓s_✓s _✓D_✓e_✓s_✓c_✓r_✓i_✓p_✓t_✓i_✓o_✓n
ellipsewid = 1.3i arrow A: ellipse "class heading" arc
-> cw arc ellipse "instance variables" arc -> arc cw B:
ellipse "protocol" arrow arrow from A.e to B.w
_✓C_✓l_✓a_✓s_✓s _✓H_✓e_✓a_✓d_✓i_✓n_✓g
arrow circle "C✓C✓C✓Cl✓l✓l✓la✓a✓a✓as✓s✓s✓ss✓s✓s✓s" arrow ellipse "variable" arrow
right 3i move left 3i move right 0.1i arc -> cw arc
ellipse "colon variable" arc -> arc cw
v✓v✓v✓va✓a✓a✓ar✓r✓r✓ri✓i✓i✓ia✓a✓a✓ab✓b✓b✓bl✓l✓l✓le✓e✓e✓e defines the class name, must begin with an
upper case letter.
c✓c✓c✓co✓o✓o✓ol✓l✓l✓lo✓o✓o✓on✓n✓n✓n v✓v✓v✓va✓a✓a✓ar✓r✓r✓ri✓i✓i✓ia✓a✓a✓ab✓b✓b✓bl✓l✓l✓le✓e✓e✓e defines the superclass name, superclass
is O✓O✓O✓Ob✓b✓b✓bj✓j✓j✓je✓e✓e✓ec✓c✓c✓ct✓t✓t✓t if not given.
_✓I_✓n_✓s_✓t_✓a_✓n_✓c_✓e _✓V_✓a_✓r_✓i_✓a_✓b_✓l_✓e_✓s
arrow circle "|" arrow A: ellipse "variable" arc -> cw
arc cw arrow left 1.3i arc cw arc cw move to A.e arrow
circle "|" arrow
Instance variables must begin with a lower case letter.
_✓P_✓r_✓o_✓t_✓o_✓c_✓o_✓l
arrow circle "[" arrow A: ellipse "method" arc -> cw
line down 0.2i arc cw arrow left 0.4i circle "|" arrow
left 0.4i arc cw line up 0.2i arc cw move to A.e arrow
circle "]" arrow
Vertical bar separating methods m✓m✓m✓mu✓u✓u✓us✓s✓s✓st✓t✓t✓t be placed in
column 1.
_✓M_✓e_✓t_✓h_✓o_✓d
arrow A: ellipse "method pattern" arc -> cw arc ellipse
"temporary variables" arc -> arc cw C: ellipse "state-
ments" arrow arrow from A.e to C.w
September 19, 1986
_✓M_✓e_✓t_✓h_✓o_✓d _✓P_✓a_✓t_✓t_✓e_✓r_✓n
A: arrow ellipse "unary selector" arrow right 3i move
to A arc -> cw line down 0.1i B: arc ellipse "binary
selector" arrow ellipse "argument variable" arc -> line
up 0.1i arc -> cw move to start of B line down 0.6i arc
ellipse "keyword selector" arrow C: ellipse "argument
variable" arc line up 0.6i move to C.e right arc -> cw
arc cw arrow left 3.1i arc -> cw arc cw
Argument variables must begin with a lower case letter,
and must be distinct from instance variables.
_✓T_✓e_✓m_✓p_✓o_✓r_✓a_✓r_✓y _✓V_✓a_✓r_✓i_✓a_✓b_✓l_✓e_✓s
arrow circle "|" arrow A: ellipse "variable" arc -> cw
arc cw arrow left 1.3i arc cw arc cw move to A.e arrow
circle "|" arrow
temporary variables must begin with lower case letters,
and must be distinct from both instance and argument
variables.
_✓S_✓t_✓a_✓t_✓e_✓m_✓e_✓n_✓t_✓s
arrow A: line right 1.5i move to start of A arc -> cw
arc circle "|✓^" arc -> arc cw B: ellipse "expression"
arrow right 2.5i move to B.e move right 0.5i arc -> cw
arc circle "." arc -> arc cw move to B.e arc -> cw line
down 0.4i arc -> cw circle "." arrow left 2.5i arc cw
arrow up 0.4i arc cw
_✓E_✓x_✓p_✓r_✓e_✓s_✓s_✓i_✓o_✓n
A: arrow right 3.3i move to start of A arc -> cw arc
ellipse "variable" arrow B: circle "<-" arc -> arc cw
C: ellipse "cascaded expression" arrow move to B.e arc
-> cw arc cw arrow left 2.3i arc -> cw arc cw
September 19, 1986
_✓C_✓a_✓s_✓c_✓a_✓d_✓e_✓d _✓E_✓x_✓p_✓r_✓e_✓s_✓s_✓i_✓o_✓n
arrow ellipse "simple expression" arrow right 3.5i move
left 0.5i right arc -> cw arc cw circle ";" arrow
ellipse "continuation" arc -> cw arc cw
_✓S_✓i_✓m_✓p_✓l_✓e _✓E_✓x_✓p_✓r_✓e_✓s_✓s_✓i_✓o_✓n
arrow A: ellipse "binary" arrow move to A.e arc -> cw
line down 0.2i arc cw ellipse "keyword" arc -> cw line
up 0.2i arc cw
_✓B_✓i_✓n_✓a_✓r_✓y
arrow A: ellipse "unary" arrow move to A.e arc -> cw B:
line down 0.2i arc cw ellipse "binary selector" arc ->
cw line up 0.2i arc cw
_✓U_✓n_✓a_✓r_✓y
arrow A: ellipse "primary" B: line right 2i arc -> cw
arc cw ellipse "unary selector" arc -> cw arc cw move
to B.e arrow right
_✓P_✓r_✓i_✓m_✓i_✓t_✓i_✓v_✓e
arrow right 0.2i circle "<primitive" wid 0.7i arrow
right 0.2i ellipse "unsigned integer" A: line right
1.7i arc -> cw arc cw ellipse "primary" arc -> cw arc
cw move to A.e arrow right circle ">" arrow right
Unsigned integer must be a number in the range 0-255.
September 19, 1986
_✓P_✓r_✓i_✓m_✓a_✓r_✓y
A: arrow right 2i ellipse "variable" arrow right 2i
move to start of A move right 0.5i arc -> cw B: line
down 0.1i arc arrow right 1i ellipse "literal" arrow
right 1i arc -> line up 0.1i arc cw move to end of B C:
arrow down 0.6i arc arrow right 1i ellipse "block"
arrow right 1i arc -> line up 0.6i move to end of C Z:
arrow down 0.6i arc arrow right 1i ellipse "primitive"
arrow right 1i arc -> line up 0.6i move to end of Z
arrow down 0.6i arc circle "(" arrow ellipse "cascaded
expression" arrow circle ")" arc -> line up 0.6i
If variable begins with an upper case letter it is a
class name, otherwise variable must be instance, argu-
ment or temporary variable or pseudo variable name.
_✓C_✓o_✓n_✓t_✓i_✓n_✓u_✓a_✓t_✓i_✓o_✓n
A: arrow arrow right 1.5i ellipse "unary selector" Z:
line right 1.5i arrow right 0.5i move to end of Z arc
-> cw arrow down 2i arc -> cw arrow left 4.5i arc -> cw
arrow up 2i arc -> cw move to end of A arc -> cw C:
arrow down 0.4i arc ellipse "binary selector" arrow
ellipse "unary" arc -> line up 0.4i arc cw move to end
of C arrow down 0.6i arc ellipse "keyword" arrow D:
ellipse "binary" arc -> line up 0.6i move to D.e right
arc -> cw arc cw arrow left 3.1i arc cw arc -> cw
September 19, 1986
_✓B_✓l_✓o_✓c_✓k
arrow A: circle "[" arrow right 2.2i ellipse "state-
ments" arrow circle "]" arrow move to A.e arc -> cw arc
ellipse "block arguments" width 1.2i arc -> arc cw
The last statement cannot be followed by a period.
_✓B_✓l_✓o_✓c_✓k _✓A_✓r_✓g_✓u_✓m_✓e_✓n_✓t_✓s
arrow A: ellipse "colon variable" arrow circle "|"
arrow move to A.e arc -> cw arc cw arrow left 1.3i arc
cw arc cw
_✓L_✓i_✓t_✓e_✓r_✓a_✓l
arrow right 1i A: arrow ellipse "number" arrow right
1.5i move to start of A arc -> cw B: line down 0.1i arc
ellipse "symbol" arc -> line up 0.1i arc cw move to end
of B C: arrow down 0.6i arc ellipse "string" arc ->
line up 0.6i move to end of C D: arrow down 0.6i arc
ellipse "character constant" arc -> line up 0.6i move
to end of D H: arrow down 0.6i arc ellipse "bytearray"
arc -> line up 0.6i move to end of H E: arrow down 0.6i
arc ellipse "array constant" arc -> line up 0.6i
September 19, 1986
_✓N_✓u_✓m_✓b_✓e_✓r
A: arrow right 3.6i move to start of A arc -> cw arc
ellipse "base" width 0.8i arc -> arc cw arc -> cw arc
ellipse "sign" width 0.8i arc -> arc cw ellipse
"unsigned number" arrow
_✓B_✓a_✓s_✓e
arrow ellipse "unsigned integer" arrow circle "r" arrow
_✓S_✓i_✓g_✓n
A: arrow arrow right 3i move to end of A B: arc cw arc
circle "+" arc arc cw move to end of B arrow down 0.6i
arc circle "-" arc arrow up 0.6i
_✓U_✓n_✓s_✓i_✓g_✓n_✓e_✓d _✓N_✓u_✓m_✓b_✓e_✓r
arrow A: ellipse "unsigned fraction" arc -> cw arc cir-
cle "e" arrow right 0.25i ellipse "sign" width 0.8i
arrow right 0.25i ellipse "unsigned integer" arc -> arc
cw move to A.e arrow right 4.2i
_✓U_✓n_✓s_✓i_✓g_✓n_✓e_✓d _✓F_✓r_✓a_✓c_✓t_✓i_✓o_✓n
arrow A: ellipse "unsigned integer" arc -> cw arc cir-
cle "." arrow ellipse "unsigned integer" arc -> arc cw
move to A.e arrow right 4i
_✓U_✓n_✓s_✓i_✓g_✓n_✓e_✓d _✓I_✓n_✓t_✓e_✓g_✓e_✓r
arrow A: circle "digit" arrow move to A.e arc -> cw arc
cw arrow left 0.5i arc -> cw arc cw
September 19, 1986
_✓S_✓y_✓m_✓b_✓o_✓l
arrow circle "#" arrow A: circle "char" arrow move to
A.e arc cw arc cw arrow left 0.5i arc cw arc cw
char is any non-space character that is not one of
period, parenthesis or square braces.
_✓S_✓t_✓r_✓i_✓n_✓g
arrow circle "'" arrow A: circle "char" arrow circle
"'" arrow move to A.e arc cw arc cw arrow left 0.5i arc
cw arc cw
To include a quote mark in a string, use two adjacent
quote marks.
_✓C_✓h_✓a_✓r_✓a_✓c_✓t_✓e_✓r _✓C_✓o_✓n_✓s_✓t_✓a_✓n_✓t
arrow circle "$" arrow circle "char" arrow
_✓B_✓y_✓t_✓e_✓a_✓r_✓r_✓a_✓y
arrow circle "#" arrow circle "[" arrow A: ellipse
"unsigned integer" arrow circle "]" arrow move to A.e
arc -> cw arc cw line left 1.3i arc -> cw arc cw
Integer must be in the range 0 through 255.
_✓A_✓r_✓r_✓a_✓y _✓C_✓o_✓n_✓s_✓t_✓a_✓n_✓t
arrow circle "#" arrow ellipse "array" arrow
September 19, 1986
_✓A_✓r_✓r_✓a_✓y
arrow circle "(" arrow A: arc -> cw arc ellipse
"number" arc -> arc cw B: arrow circle ")" arrow move
to start of A arrow right 2.5i move to end of A C:
arrow down 0.6i arc ellipse "symbol" arc -> arrow up
0.6i move to end of C D: arrow down 0.6i arc ellipse
"string" arc -> arrow up 0.6i move to end of D E: arrow
down 0.6i arc ellipse "character constant" arc -> arrow
up 0.6i move to end of E arrow down 0.6i arc ellipse
"array" arc -> arrow up 0.6i move to start of B right
arc -> cw arrow down 3i arc -> cw arrow left 2.4i arc
-> cw arrow up 3i arc -> cw
The leading sharp sign can be omitted in symbols and
arrays inside of an array list. Binary selectors, key-
words, and other strings are treated as Symbols inside
of arrays.
September 19, 1986